// StringRegisterFunction.h: interface for the StringRegisterFunction class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_STRINGREGISTERFUNCTION_H__2FAE0284_0A0A_489F_BEB1_691C1DD2BFDD__INCLUDED_)
#define AFX_STRINGREGISTERFUNCTION_H__2FAE0284_0A0A_489F_BEB1_691C1DD2BFDD__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "FunctionObject.h"

class StringRegisterFunction : public FunctionObject  
{
	DECLARE_DYNAMIC_EX(StringRegisterFunction)
public:
	StringRegisterFunction();
	virtual ~StringRegisterFunction();

public:
	virtual void RegisterToString();
	virtual void UnRegisterToString();

protected:
	StringRegisterFunction* NextRegister(){
		return m_pNextRegister;
	}

	void NextRegister(StringRegisterFunction* pNext){
		ASSERT(pNext);
		m_pNextRegister = pNext;
	}
	
	INT GetRegisterFunctionNum();
protected:
	StringRegisterFunction* m_pNextRegister;

};

#endif // !defined(AFX_STRINGREGISTERFUNCTION_H__2FAE0284_0A0A_489F_BEB1_691C1DD2BFDD__INCLUDED_)
